package com.charger.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.charger.chargingStation.domain.Chargingstation;
import com.charger.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.charger.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 故障处理对象 failure
 *
 * @author xuan
 * @date 2024-11-27
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString
public class FailureManage extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 故障列表主键
     */
    private Long failureId;

    /**
     * 故障类型
     */
    @Excel(name = "故障类型")
    private String failureType;

    /**
     * 故障内容
     */
    @Excel(name = "故障内容")
    private String failureContent;

    /**
     * 发生时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发生时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date failureTime;

    /**
     * 处理表外键
     */
    @Excel(name = "处理表外键")
    private Long disposeId;

    /**
     * 充电枪id（外键）
     */
    @Excel(name = "充电枪id", readConverterExp = "外=键")
    private Long chargerId;

    /**
     * 充电站外键
     */
    @Excel(name = "充电站外键")
    private Long chargerStationId;

    /**
     * 处理状态
     */
    @Excel(name = "处理状态")
    private String state;

    /**
     * 逻辑删除
     */
    @Excel(name = "逻辑删除")
    @TableField(exist = false)
    private Long del;

    /*
        处理表对象
     */
    private Dispose dispose;

    /*
        充电站对象
     */
    private Chargingstation chargingstation;
}
